1. Field of the Invention
The present invention relates to electronic systems employing DVD readers. More particularly, the present invention relates to a method and apparatus for presenting DVD media read error data.
2. The Background Art
Modern electronic systems such as video playback machines and computers often employ Compact Disk Read-Only Memory (CD-ROM) or DVD for storing large amounts of data such as video or audio data.
DVD's are a type of storage media utilized for video and audio data as well as large software systems. Like CD-ROM media, a DVD media is read using a player or reader designed for that purpose.
Information is stored on DVD media in digital form, resulting in data that is either a one (1) or a zero (0). Those of ordinary skill in the art are readily aware that DVD media contain areas of high reflectivity (land) and low reflectivity (pit). When read with a laser, a transition from land to pit or from pit to land represents a "1", and all other areas represents a "0".
During the process of writing data to a DVD media, Reed-Soloman error correction codes and other error mechanisms known to those of ordinary skill in the art are also written. When the data is later read back, these correction codes may be compared with actual correction codes which are computed from the actual data read from the DVD to determine whether one or more errors have occurred. Depending on the differences between the correction codes read from the DVD media and the correction codes computed from the actual data, errors in the actual data may be correctable.
In this disclosure, the term "correction code" shall refer to Reed-Soloman correction codes, checksums in general, and any other data structure used by those of ordinary skill in the art to determine if data has been accurately read from a storage media.
Those of ordinary skill in the art are well aware of methods and apparatus for determining whether the data is correctable, and for correcting the actual data. However, the prior art apparatus and methods suffer from unnecessary delays in allowing later processes to utilize information about errors, whether those errors were correctable, and how many errors were corrected.
FIG. 1 is a block diagram of a typical prior art DVD signal processing system.
Referring to FIG. 1, processing system 10 comprises a signal processor 12 which receives data 14 from a DVD media. Processor 12 examines the input data block and determines whether there are errors. If so, processor 12 corrects those errors that are correctable, and then stores the corrected data in memory 16.
FIG. 2 depicts a typical arrangement of a data block after being processed by a DVD signal processor.
Referring to FIG. 2, a typical data block 14 (from FIG. 1) comprises 208 rows (e.g. rows 20, 22) of 182 bytes each. Reading the block from left to right and from top to bottom in sections, each section includes 12 rows of data bytes, each row including 172 actual data bytes plus 10 bytes of correction data information, the correction data relating to the preceding 172 actual data bytes. The correction data at the end of each row is known to those of ordinary skill in the art as inner-code parity (PI) data.
Every thirteenth row in a section includes error data 22 which is commonly called outer code parity (PO) data. Although this correction data is interleaved with actual data, PO data is processed as columns. Thus, just as there are 172 user data bytes and ten PI error data bytes per row, there are 182 columns, each column having 192 user data bytes and 16 error data bytes.
Within every thirteenth row of data beginning with the first row there is a three-byte sector number which identifies the sector number of the data stored therein. Such a sector number is stored in the location depicted in FIG. 2. There are 16 sector numbers within each ECC block. Therefore, a block number is the most significant 20 bits of a 24 bit sector number (the sector number divided by 16), and may be represented as five hexadecimal digits.
The prior art apparatus is useful for its intended purpose of handling and managing PI and PO data and the error rate data produced by signal processor 12. However, there are significant delays which are inherent in the prior art apparatus due to the necessity of storing the data in memory prior to operating on the corrected data. Further, there is no defined method for outputting the error rate data using an efficient data structure for later processing.
It would therefore be beneficial to provide an apparatus for handling and managing error rate information which allows devices needing error data to receive that data in real time.
It would also be beneficial to provide an apparatus which provides DVD error data to devices in a well-defined structure which can be processed efficiently and effectively.
It would also be beneficial to provide an apparatus which provides error information with the corresponding block number so that the data errors and block location may be correlated.